import redis
class Config: # 将项目中用到的所有配置都集中到这里，方便管理
    SECRET_KEY = "hsjwcf" # 设置秘钥，操作session时需要
    # 设置连接数据库字符串
    SQLALCHEMY_DATABASE_URI = "mysql://root:root@127.0.0.1:3306/ihome_h2207a"
    # 当数据库内容发生变化后自动同步到模型类对象的属性中
    SQLALCHEMY_TRACK_MODIFICATIONS = True
    SQLALCHEMY_ECHO = True # 回显SQL语句

    # redis数据库的相关配置
    REDIS_HOST = "127.0.0.1"
    REDIS_PORT = 6379

    # Flask-Session模块的相关配置
    SESSION_TYPE = "redis" # 指定将session信息存储到redis数据库中
    # 指定通过session操作redis数据库时使用的实例对象
    SESSION_REDIS = redis.StrictRedis(host=REDIS_HOST,port=REDIS_PORT)
    SESSION_USE_SIGNER = True # 对session信息进行混淆处理
    PERMANENT_SESSION_LIFETIME = 86400 # 指定session的有效期：86400=3600*24


class DevelopmentConfig(Config):
    """开发环境下的配置"""
    DEBUG=True # 当前项目运行在调试模式下

class ProductionConfig(Config):
    """生产环境下的配置"""
    pass

config_map = {
    "develop":DevelopmentConfig,
    "product":ProductionConfig
}